Machine learning for activity monitoring and validity identification

ABSTRACT

Techniques for improved machine learning are provided. Activity data describing an activity for a financial account of a resident in a residential care facility is received, and a set of attributes corresponding to the activity is extracted from the activity data, comprising determining a first attribute of the set of attributes by processing unstructured text associated with the activity using one or more natural language processing techniques. A validity score is generated by processing the set of attributes using a trained machine learning model, where the validity score indicates a probability that the activity is valid. In response to determining that the validity score is below a defined threshold, one or more interventions are initiated for the resident.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent ApplicationNo. 63/322,581, filed Mar. 22, 2022, the entire content of which isincorporated herein by reference in its entirety.

INTRODUCTION

Embodiments of the present disclosure relate to machine learning. Morespecifically, embodiments of the present disclosure relate to usingmachine learning to monitor user activity.

A wide variety of healthcare settings, such as in residential carefacilities (e.g., nursing homes), help to manage or monitor some or allof the finances of some or all of the residents. For example, manylong-term residential care facilities allow residents to use trustaccounts, managed by the facility, to hold monetary funds (often inrelatively small amounts). Residents can use such funds for a variety ofpurposes, ranging from vending machines, services such as haircuts, andthe like. In many cases, these accounts are funded by external sources,such as social security, personal savings, family, and the like.Conventionally, there is little oversight as to how residents use thefunds in such accounts.

Accordingly, in many conventional facilities, a range of issues canarise in connection to such funds. For example, theft or other financialabuse is distressingly common, such as where individuals with ill-intent(which can include facility staff, third parties engaging in scams ordeception, family, and the like) siphon money from these accounts usingdeception or force. These concerns are particularly prevalent when theresident suffers from declining mental health, which often makes elderresidents targets for fraud.

Conventionally, caregivers and family rely on relatively infrequentreviews of the accounts to identify problematic activity. However, suchconventional approaches are entirely subjective (relying on theexperience or knowledge of the individual to recognize possibleconcerns), and it is simply impossible to evaluate all the relevant datain order to identify potential fraud.

Improved systems and techniques to automatically monitor activity areneeded.

SUMMARY

According to one embodiment presented in this disclosure, a method isprovided. The method includes: receiving activity data describing afirst activity for a financial account of a first resident in aresidential care facility; extracting, from the activity data, a firstset of attributes corresponding to the first activity, comprising:determining a first attribute of the first set of attributes byprocessing unstructured text associated with the first activity usingone or more natural language processing techniques; generating a firstvalidity score by processing the first set of attributes using a trainedmachine learning model, wherein the first validity score indicates aprobability that the first activity is valid; and in response todetermining that the first validity score is below a defined threshold,initiating one or more interventions for the first resident.

According to one embodiment presented in this disclosure, a method isprovided. The method includes: receiving historical data describingactivity for a financial account of a first resident in a residentialcare facility; extracting, from the historical data, a set of attributescorresponding to an activity, comprising: determining a first attributeof the set of attributes by processing unstructured text associated withthe activity using one or more natural language processing techniques;training a machine learning model to generate validity scores based onthe set of attributes, wherein the validity scores indicate probabilitythat financial account activity is valid; and deploying the trainedmachine learning model.

The following description and the related drawings set forth in detailcertain illustrative features of one or more embodiments.

DESCRIPTION OF THE DRAWINGS

The appended figures depict certain aspects of the one or moreembodiments and are therefore not to be considered limiting of the scopeof this disclosure.

FIG. 1 depicts an example workflow for training machine learning modelsbased on historical data.

FIG. 2 depicts an example workflow for generating validity scores andinterventions using machine learning models.

FIG. 3 depicts an example workflow for refining machine learning modelsto evaluate activity data.

FIG. 4 depicts an example workflow for preprocessing unstructured datafor improved machine learning.

FIG. 5 is a flow diagram depicting an example method for trainingmachine learning models to evaluate user depression.

FIG. 6 is a flow diagram depicting an example method for using trainedmachine learning models to generate validity scores and implementappropriate interventions.

FIG. 7 is a flow diagram depicting an example method for extractingactivity attributes for improved machine learning.

FIG. 8 is a flow diagram depicting an example method for preprocessingunstructured input data to improve machine learning results.

FIG. 9 is a flow diagram depicting an example method for evaluatingactivity rules to monitor activity validity.

FIG. 10 is a flow diagram depicting an example method for using machinelearning to evaluate activity validity.

FIG. 11 is a flow diagram depicting an example method for initiatinginterventions based on machine learning predictions.

FIG. 12 is a flow diagram depicting an example method for refiningmachine learning models to generate and evaluate care plans.

FIG. 13 is a flow diagram depicting an example method for generatingvalidity scores using trained machine learning models.

FIG. 14 is a flow diagram depicting an example method for trainingmachine learning models to improve activity evaluation.

FIG. 15 depicts an example computing device configured to performvarious aspects of the present disclosure.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe drawings. It is contemplated that elements and features of oneembodiment may be beneficially incorporated in other embodiments withoutfurther recitation.

DETAILED DESCRIPTION

Aspects of the present disclosure provide apparatuses, methods,processing systems, and computer-readable mediums for improved machinelearning to monitor resident accounts and identify problematic orfraudulent activity.

In some embodiments, a machine learning model (also referred to in someaspects as a validity model) can be trained to assess financial accountactivity (such as deposits to trust accounts managed by a healthcarefacility, withdrawals or disbursements from such accounts, and the like)to identify fraudulent or otherwise problematic activity, therebyimproving care (e.g., by providing mental health evaluations whenproblematic or inappropriate activity becomes common), and preventingpotentially significant negative financial outcomes. In some examples,the machine learning techniques described herein are used to monitortrust accounts holding funds managed by a residential care facility onbehalf of a resident. However, aspects of the present disclosure arereadily applicable to monitor activity for a wide variety of financialaccounts. In some embodiments, by monitoring for problematic residentactivity, the system is able to identify those in need of additionalcare (such as due to declining mental health), and can assist withreallocating resources and driving targeted interventions to helpmitigate, prevent, or reduce the effect of such issues. For example, thesystem may identify a trend of troublesome activity, and suggest orinitiate a mental health evaluation, counseling or therapy, or otherinterventions to help the resident. As used herein, a resident (alsoreferred to herein as a user, an individual, or a patient) is anindividual that has some or all of their financial activity managed ormonitored to detect fraud or other problematic activity. Such residentsmay be an individual that resides in a care facility, which may includein-home care, communal facilities, and the like.

In conventional settings, caretakers must rely on subjective assessments(e.g., looking for unusually large transactions or requests) to performsuch analysis. In addition to this inherently subjective and inaccurateapproach, some conventional systems rely on manual identification of thepotential risk factors for resident activity. However, these riskfactors are similarly subjective and uncertain, and vary depending onthe particular resident. Moreover, the vast number and variety ofresidents and factors that affect resident activity, as well as thesignificant amounts of data available for each resident, render suchanalysis impossible to adequately perform manually or mentally. Aspectsof the present disclosure can not only reduce or prevent this subjectivereview, but can further prevent wasted time and computational expensespent reviewing vast amounts of irrelevant data. Further, aspects of thepresent disclosure enable more accurate validity evaluations, moreefficient use of computational resources, and overall improved outcomesfor users who may be at risk.

Embodiments of the present disclosure can generally enable proactive andquality care for residents, as well as dynamic and targetedinterventions, and that help to prevent or reduce adverse events due toinvalid or problematic activity, as well as declining mental acuity.This autonomous and continuous monitoring with respect to individualresidents (as well as across groups of users, in some aspects) enables awide variety of improved results, including not only improved outcomesfor the users (e.g., reduced fraud, early identification of potentialmental health issues, targeted interventions, and the like) but alsoimproved computational efficiency and accuracy of the evaluation andsolution process.

In some embodiments, a variety of historical activity data can becollected and evaluated to train one or more machine learning models.During such training, the machine learning model(s) can learn a set offeatures (e.g., resident attributes and/or activity attributes) and/or aset of weights for such features. These features and weights can then beused to automatically and efficiently process new activity data in orderto identify potential concerns for problematic transactions. In someaspects, the model may be trained during a training phase, and thendeployed as a static model that, once deployed, remains fixed. In otherembodiments, the model may be refined or updated (either periodically orupon specified criteria). That is, during use in detecting andintervening in potential problems, the model may be refined based onfeedback from users, caregivers, and the like. For example, if a userindicates that a given transaction was fraudulent (regardless of whetherthe model identified the fraud), the model may be refined based on thisindication. Similarly, if a user indicates that an activity wasappropriate, the model may be refined to reflect this new data.

In embodiments, the machine learning model(s) can generally be used togenerate risk or validity scores or classifications for activity(including deposits and withdrawals to trust accounts) based onattributes of the activity and/or resident. For example, the system maydetermine or extract the magnitude of the activity (e.g., the size of awithdrawal), the recipient (e.g., who received or requested the funds),the timing of the activity (e.g., whether it occurred overnight), theform or format (e.g., whether the disbursement was in cash or in theform of a check), and the like. In some embodiments, the system furtherextracts resident attributes, such as demographics (e.g., age, gender,marital status, and the like), health conditions, clinical assessments,medications, and the like. In some embodiments, the attributes includeboth structured data (such as age) as well as unstructured data (e.g.,natural language notes or reasons for the activity, provided by theresident or recipient). These attributes can then be processed as inputto the machine learning model(s), which can generate a validity scoreand/or classification (e.g., indicating low, moderate, or high risk offraud) for the activity. In some embodiments, the models canadditionally be used to monitor and identify changes or trends in therisk (e.g., over time), which can help identify residents with changingor declining mental health. In these ways, the machine learning modelscan help drive specific and targeted interventions and assistance toimprove user outcomes and reduce wasted resources and computationalexpense.

Example Workflow for Training Machine Learning Models using HistoricalData

FIG. 1 depicts an example workflow 100 for training machine learningmodels based on historical data.

In the illustrated workflow 100, a set of historical data 105 isevaluated by a machine learning system 135 to generate one or moremachine learning models 140. In embodiments, the machine learning system135 may be implemented using hardware, software, or a combination ofhardware and software. The historical data 105 generally includes dataor information associated with one or more prior activities, such aswithdrawals and/or deposits to resident trust accounts, from one or moreprior points in time. That is, the historical data 105 may include, forone or more transactions or activities, a set of attributes associatedwith the activity. In some embodiments, the historical data 105 mayinclude data for activities relating to trust accounts of one or moreresidents (also referred to as users or patients) residing in one ormore long-term care facilities. The historical data 105 may generally bestored in any suitable location. For example, the historical data 105may be stored within the machine learning system 135, or may be storedin one or more remote repositories, such as in a cloud storage system.

In the illustrated example, the historical data 105 includes, for eachactivity reflected in the data, an indication of the magnitude 110(e.g., the amount of money that was transferred), the timing 115 of theactivity, participants 120 (e.g., one or more attributes of the residentassociated with the account, one or more attributes of the recipient ordepositor of the funds, and the like), the format 125 (e.g., whether theactivity was a cash withdrawal, a check payable to cash, a check writtento an individual, a credit card payment, and the like), and notes 130(e.g., natural language text explaining the reason for the activity). Insome embodiments, as discussed above, the historical data 105 includesdata for multiple activities associated with any number of residents.That is, for a given resident, the historical data 105 may includemultiple sets of attributes, one for each activity.

In some embodiments, the historical data 105 may be collectively storedin a single data structure. For example, the magnitude 110, timing 115,participants 120, format 125, and natural language notes 130 may each berepresented in an activity profile for each activity. In otherembodiments, some or all of the data (such as attributes orcharacteristics of the resident) may be stored in other locations. Insome portions of the present discussion, the various components of thehistorical data 105 are described with reference to a single activityfor conceptual clarity (e.g., the magnitude 110 of a singletransaction). However, it is to be understood that the historical data105 can generally include such data for any number of transactions.

The magnitude 110 generally corresponds to the size of the activity. Forexample, the magnitude 110 may indicate the total amount of moneytransferred (e.g., in an appropriate currency for the locale) for theactivity, the amount of money over or under a defined threshold value(e.g., an amount set by the resident or a caregiver), and the like. Thetiming 115 generally indicates when the activity or transfer occurred.Depending on the particular implementation, the timing 115 may includethe time of day, the day of the week, the time of month, the time ofyear, and the like. In some embodiments, the timing 115 may additionallyor alternatively indicate whether the activity occurred during definedtimes (or outside of defined times), such as overnight, as specified bythe resident or another user.

As discussed in more detail below, the participants 120 generallycorrespond to various attributes of one or more individuals related tothe activity. For example, in the case of a deposit, the participants120 may include the depositor (e.g., the source of the funds), the userthat actually handled the deposit (e.g., the caregiver that placed themoney into a lockbox or other storage) and the resident. In the case ofwithdrawals, the participants 120 may include the resident, theindividual that actually withdrew or approved the withdrawal (e.g., thecaregiver that removed the money from a lockbox to be disbursed), therecipient of the funds (e.g., the barber, if the transaction was for ahaircut), and the like.

In some embodiments, the specific attributes included in theparticipants 120 are curated or selected based on their relevance toactivity validity. For example, in one aspect, a user (e.g., aclinician) may manually specify attributes that are highly correlatedwith transaction validity. In some embodiments, some or all of theconditions or assessments may be inferred or learned (e.g., using one ormore feature selection techniques).

For example, in some embodiments, the participant attributes may includeinformation such as whether it is a new recipient or depositor (e.g., anindividual or entity to whom the specific resident, or any resident inthe facility, has previously provided money), whether the recipient ordepositor is an individual or legal entity (such as a corporation orbusiness), whether the recipient or depositor is local or remote (e.g.,whether the recipient is within a defined proximity or geographic regionwith respect to the facility), and the like.

In some embodiments, attributes of the resident can include their age,demographics, marital status, mental condition or other health status,average activity (e.g., the average amount of a single transaction forthe resident, the average amount they spend per month, the averagenumber or frequency of transactions, and the like), and the like.

The format 125 of the activity can generally indicate the form of thewithdrawal or deposit, such as whether it was cash, a cashier's check, acheck payable to a specific recipient, a check payable to cash, anelectronic transfer, and the like.

The notes 130 can generally include any natural language descriptionassociated with the activity. For example, the resident may (optionally)report a reason for the withdrawal (e.g., “this is for a haircut,” or“it is my grandson's birthday”). In some embodiments, the recipient mayadditionally or alternatively provide a reason (such as on an invoice).In an embodiment, the notes 130 may include written text, verbalrecordings (which may be converted to written text using speech-to-textalgorithms), and the like. Additionally, the notes 130 may be recordedby the participants themselves (e.g., written down by the resident), bya caregiver or other user that manages the funds, and the like. In someembodiments, as discussed in more detail below, these notes 130 can beevaluated (e.g., using natural language processing techniques or machinelearning models) to help quantify or predict the validity of theactivity.

For example, in some embodiments, the machine learning system 135 mayidentify defined keywords in the text (e.g., those which have beenpreviously-associated or correlated with fraud), sentiment analysis, andthe like in order to score each note 130. Such a score may be input tothe broader machine learning model 140. In some embodiments, the machinelearning system 135 can identify patterns in the notes 130, such asdeviations from the norm. For example, if the activity 105 usuallyincludes a note (e.g., above some defined threshold) but the recentactivities do not, the system may learn to infer fraud. Similarly, ifthe activity 105 generally did not include notes but new activity does,or if the author of the note has changed, the model may learn togenerate higher scores indicating potential fraud.

Although the illustrated historical data 105 includes several specificcomponents including magnitude 110, timing 115, participants 120, format125, and natural language notes 130, in some embodiments, the historicaldata 105 used by the machine learning system 135 may include fewercomponents (e.g., a subset of the illustrated examples) or additionalcomponents not depicted. Additionally, though the illustrated exampleprovides general groupings of attributes to aid understanding, in someembodiments, the historical data 105 may be represented using any numberof groups. That is, the individual attributes (e.g., individualattributes of the participants) may simply be used as input to themachine learning system 135, without reference to any larger grouping orcomponent.

Additionally, though the above discussion relates to receiving specifiedsets of data (e.g., specified attributes), in some aspects, the machinelearning system 135 may receive a broader set of data (e.g., allattributes of the resident). The machine learning system 130 may thenselect which subset of the data to consider (e.g., using featureselection techniques, as discussed above, or based on the defined set offeatures to be used), or may assign weights to each feature (e.g., usingmachine learning) to generate accurate validity scores.

As illustrated, the machine learning system 135 generates one or moremachine learning models 140 based on the historical data 105. Themachine learning model 140 generally specifies a set of weights for thevarious features or attributes of the historical data 105. That is, themachine learning model 140 may include a set of weights (e.g., edgeweights in a feedforward neural network) that can be used to generate anoverall validity score for the activity.

In some embodiments, the specific features considered by the machinelearning model 140 (e.g., the specific participant attributes oractivity attributes) are manually defined and curated. For example, thespecific features may be defined by a subject-matter expert. In otherembodiments, the specific features are learned during a training phase.

For example, the machine learning system 135 may process the historicaldata 105 for a given activity as input to the machine learning model140, and compare the generated validity score to the ground-truth (e.g.,an indication as to whether the activity was valid). The differencebetween the generated and actual score can be used to refine the weightsof the machine learning model 140, and the model can be iterativelyrefined (e.g., using data from multiple residents and/or multiple pointsin time) to generate accurate validity scores.

As used herein, activity is said to be valid if it corresponds to anappropriate source or use of funds, as compared to invalid use such asdue to scams. For example, withdrawing a small amount of cash for avending machine may be valid, while withdrawing hundreds of dollars perday for the vending machine may be invalid. In some embodiments, thevalidity of a transaction may indicate the appropriateness of thetransaction overall (e.g., whether it is a healthy or good decision),rather than whether the transaction is strictly fraudulent. For example,an aging resident with declining mental health may spend large amountsof money on useless items. Though such activity may not be fraudulent,in some embodiments, it may be labeled as invalid or inappropriate. Insome embodiments, the validity of a given activity or transaction isdefined by users and/or on a per-resident basis. For example, a givenactivity may be valid for some residents but invalid for others. Suchvalidity may be defined by the resident themselves (if they are mentallysound), by one or more caregivers (such as nursing staff, familymembers, or the power of attorney for a resident), and the like.

In some embodiments, during or after training, the machine learningsystem 135 may prune the machine learning model 140 based in part on thelearned weights. For example, if the learned weight for a given feature(e.g., a specific attribute) is below some threshold (e.g., within athreshold distance from zero), the machine learning system 135 maydetermine that the feature has no impact (or negligible impact) on thevalidity of the transaction. Based on this determination, the machinelearning system 135 may cull or remove this feature from the machinelearning model 140 (e.g., by removing one or more neurons, in the caseof a neural network). For future evaluations, the machine learningsystem 135 need not receive data relating to these removed features (andmay refrain from processing or evaluating the data if it is received).In this way, the machine learning model 140 can be used more efficiently(e.g., with reduced computational expense and latency) to yield accuratevalidity evaluations.

In some embodiments, the machine learning system 135 can generatemultiple machine learning models 140. For example, a separate machinelearning model 140 may be generated for each facility (e.g., with aunique model for each specific long-term residential care facility), foreach region (e.g., with a unique model for each country), and/or foreach resident. This may allow the machine learning system 135 to accountfor resident-specific, facility-specific, region-specific, orculture-specific changes. In other embodiments, the machine learningsystem 135 generates a universal machine learning model 140. In at leastone embodiment, the machine learning model 140 may use similarconsiderations (e.g., location, region, and the like) as an inputfeature.

In at least one embodiment, the machine learning system 135 can train orretrieve a global machine learning model 140 trained based on historicaldata 105 for a variety of residents. The machine learning system 135 canthen further train, fine-tune, or refine the global model for eachindividual resident based on the specific resident data. That is, themachine learning system 135 may use one or more prior transactions for agiven resident (with known validities) to refine the global model,thereby generating a personalized machine learning model 140 that learnsto account for the specific peculiarities of the resident. This canresult in significantly improved models, particularly when the residentdiffers from other similar residents (e.g., spending significantly moreor significantly less than others of the same age, spending money ondifferent or unique things, and the like).

In some embodiments, the machine learning system 135 outputs the machinelearning model 140 to one or more other systems for use. That is, themachine learning system 135 may distribute the machine learning model140 to one or more downstream systems, each responsible for one or morefacilities or residents. For example, the machine learning system 135may deploy the machine learning model(s) 140 to one or more serversassociated with specific care facilities, and these servers may use themodel(s) to evaluate account activity for residents at the specificfacility. In at least one embodiment, the machine learning system 135can itself use the machine learning model to evaluate activity acrossone or more locations.

Example Workflow for Generating Validity Scores and Interventions usingMachine Learning

FIG. 2 depicts an example workflow 200 for generating validity scoresand interventions using machine learning models.

In the illustrated workflow 200, activity data 205 is evaluated by amachine learning system 235 (which may correspond to the machinelearning system 135 of FIG. 1 ) using one or more machine learningmodels (e.g., machine learning model 140 of FIG. 1 ) to generate one ormore validity score(s) 240. In embodiments, the machine learning system235 may be implemented using hardware, software, or a combination ofhardware and software. In some embodiments, the machine learning system235 that uses the machine learning model(s) is the same as the systemthat trains the machine learning model. In other aspects, as discussedabove, the machine learning system 235 may differ from the system thattrained the model.

The activity data 205 generally includes data or information associatedwith one or more activities of a resident (also referred to as a user, apatient, or an individual) with respect to a monetary fund or account.That is, the activity data 205 may include, for one or more activitiesor transactions, a set of relevant attributes associated with theactivity. In some embodiments, the activity data 205 corresponds tofinancial transactions of one or more residents residing in one or morelong-term care facilities. In at least one embodiment, the activity data205 corresponds to withdrawals, deposits, and/or transfers related toone or more trust accounts maintained by the facility. The activity data205 may generally be stored in any suitable location. For example, theactivity data 205 may be stored within the machine learning system 235,or may be stored in one or more remote repositories, such as in a cloudstorage system. In at least one embodiment, the activity data 205 isdistributed across multiple data stores.

In the illustrated example, the activity data 205 includes, for eachactivity or transaction reflected in the data, a magnitude 210 of theactivity, the timing 215 of the activity, the participants 220 of theactivity, the format 225 of the activity, and zero or more naturallanguage notes 230 related to the activity.

As discussed above, the magnitude 210 generally corresponds to the sizeof the activity (e.g., the total monetary value of the transaction), thetiming 215 generally indicates when the activity or transfer occurred,the participants 220 generally correspond to various attributes of oneor more individuals related to the activity, the format 225 cangenerally indicate the form of the activity, and the notes 230 cangenerally include any natural language description associated with theactivity.

Although the illustrated activity data 205 includes several discretecomponents for conceptual clarity, in some embodiments, the activitydata 205 may include fewer components (e.g., a subset of the illustratedexamples) or additional components not depicted, depending on what isavailable and the particular implementation. Additionally, though theillustrated example provides general groupings of attributes to aidunderstanding, in some embodiments, the activity data 205 may berepresented using any number of groups. That is, the individualattributes may simply be used as input to the machine learning system235, without reference to any larger grouping or component.

Additionally, though the above discussion relates to receiving specifiedsets of data (e.g., specified attributes), in some aspects, the machinelearning system 235 may receive a broader set of data (e.g., alldiagnoses or conditions of the residents) and select which subset of thedata to consider (e.g., based on the features specified in the machinelearning model).

In the illustrated example, the activity data 205 is used to generateone or more validity scores 240. The validity scores 240 can generallyinclude one or more scores for one or more transactions of one or moreresidents. For example, in one aspect, the validity scores 240 caninclude one score for each respective transaction. In one aspect, thevalidity scores 240 can include multiple scores for a single activity,such as a first score indicating the predicted validity of the activitywhen viewed in isolation (e.g., without reference to surroundingactivity), and a second score indicating the predicted validity of anindex activity when contextual activity (e.g., one or more activitiesprior to or after the index activity) is considered. As discussed above,the validity scores 240 can generally indicate the probability orlikelihood that the activity is valid. Further, as discussed above, thevalidity of a given transaction or activity may be defined not strictlybased on whether it is fraudulent, but based on whether it is consideredappropriate for the specific resident.

As discussed above, the machine learning system 235 can generate thevalidity scores 240 by identifying or extracting the relevant attributesfrom the activity data 205 (e.g., the relevant features, as indicated bythe machine learning model), and processing these attributes using theweights and architecture of the machine learning model to generate anoverall validity score 240 for the transaction based on the attributes.In some embodiments, the validity score 240 can additionally oralternatively include a classification or category (e.g., low, moderate,or high probability of being valid), determined based on one or morethreshold values for the score.

In some embodiments, the machine learning system 235 can use acombination of activity rules and machine learning to generate thevalidity scores 240. For example, the machine learning system 235 mayfirst evaluate each activity in view of a set of defined rules (whichmay include resident-specific rules), such as a rule indicating that theresident should not make cash withdrawals, that a specific recipientshould be forbidden from receiving funds, and the like. If these rulesare satisfied, the machine learning system 235 may then use the machinelearning model(s) to further evaluate the activity. In this way, themachine learning system 235 can reduce computational expense by onlyprocessing a subset of transactions (e.g., those that are potentiallyvalid because they do not violate any rules), while others (e.g., thosethat violate one or more rules) can be immediately marked as invalid.

In embodiments, the validity scores 240 can be used for a wide varietyof applications. In some embodiments, the validity scores 240 are usedto define or predict resource allocations, interventions, and the like.In the illustrated example, the validity scores 240 are optionallyprovided to an intervention system 245, which can generate one or moreinterventions 250 based on the validity scores 240. In some embodiments,these interventions 250 can include, for example, an alert to theresident or trusted caregiver (e.g., a family member), blocking thetransaction, initiating an investigation (e.g., instructing a caregiverto speak with the resident about the activity), and the like.

In some embodiments, the intervention system 245 can identify changes inthe validity scores 240 for each resident over time. In one suchembodiment, one or more of the generated interventions 250 may includealerts when the average validity score 240 exceeds some threshold, whena specified number or percentage of the resident's transactions arepredicted to be invalid, and the like. In one such embodiment, theintervention system 245 may transmit an alert (e.g., to one or moreclinicians or family members) indicating that the resident may need amental evaluation, that the resident may be falling prey to a scam, andthe like. In some embodiments, the alert may include informationrelating to the suspicious activity, such as the magnitude of thetransaction(s), the recipient(s), and the like. In at least oneembodiment, this alert is transmitted to an individual who is notinvolved, associated, or otherwise implicated in the activity. Forexample, rather than requesting that the authorizing caregiver (e.g.,that approved or otherwise carried out the withdrawal) or the individualthat authored the reason note(s) verify the activity, the system mayidentify and transmit the alert to a third party such as a complianceofficer, a management employee, and the like.

In at least one embodiment, the alert may include instructions orsuggestions with respect to specific prophylactic interventions 245 forthe user, such as increased monitoring or check-ins by caregivers,renewed or more frequent clinical assessments for changing conditions,therapy sessions, and the like.

Advantageously, the automatically generated validity scores 240 and/orinterventions 250 can significantly improve the outcomes of theresidents, helping to identify risks at early stages, thereby preventingsignificant harm (as well as further deterioration, in the case ofmental decline). Additionally, the autonomous nature of the machinelearning system 235 enables improved computational efficiency andaccuracy, as the validity scores 240 and/or interventions 250 aregenerated objectively (as opposed to the subjective judgment ofclinicians or other users), as well as quickly and with minimalcomputational expense. That is, as the scores can be automaticallyupdated whenever new activity data is available, users need not manuallyretrieve and review the relevant data (which incurs wasted computationalexpense, as well as wasted time for the user).

Further, in some embodiments, the machine learning system 235 cangenerate validity scores 240 during specified times (e.g., off-peakhours, such as overnight) to provide improved load balancing on theunderlying computational systems. For example, rather than requiringcaregivers to retrieve and review activity data for all residents in afacility to determine if any problematic actions occurred, the machinelearning system 235 can automatically identify such concerns, and usethe machine learning model(s) to generate validity scores 240 before agiven shift begins (or as the transactions occur). This can transfer thecomputational burden, which may include both processing power of thestorage repositories and access terminals, as well as bandwidth over oneor more networks, to off-peak times, thereby reducing congestion on thesystem during ordinary (e.g., daytime) use and taking advantage of extraresources that are available during the non-peak (e.g., overnight)hours.

In these ways, embodiments of the present disclosure can significantlyimprove resident outcomes while simultaneously improving the operationsof the computers and/or networks themselves (at least through improvedand more accurate scores, as well as better load balancing of thecomputational burdens).

Example Workflow for Refining Machine Learning Models

FIG. 3 depicts an example workflow 300 for refining machine learningmodels to evaluate activity data. In some embodiments, the workflow 300is performed using trained models, such as the machine learning models140 of FIG. 1 .

The depicted workflow 300 differs from the workflow 200 of FIG. 2 inthat it enables online refinement of the machine learning models basedon updated information, thereby ensuring that the models can dynamicallyevaluate activity even when general conditions change or when residentpreferences evolve. In the illustrated workflow 300, a set of activitydata 305 is evaluated by a machine learning system 335 using one or moremachine learning models (e.g., machine learning model 140 of FIG. 1 ) togenerate and/or evaluate one or more activity scores 340. Inembodiments, the machine learning system 335 may be implemented usinghardware, software, or a combination of hardware and software. In someembodiments, the machine learning system 335 corresponds to the machinelearning system 135 of FIG. 1 , and/or the machine learning system 235of FIG. 2 . In other aspects, as discussed above, the machine learningsystem 335 may differ from the system that trained the model and/orgenerated the training data.

In some embodiments, the workflow 300 generally mirrors the workflow 200of FIG. 2 to generate the validity scores 340. As discussed above, theactivity data 305 generally includes data or information associated withone or more transactions of one or more residents (also referred to aspatients or users). For example, the activity data 305 may includeinformation relating to transactions (e.g., deposits and withdrawals)made with respect to one or more trust accounts of a one or more ofresidents residing in one or more long-term care facilities. Theactivity data 305 may generally be stored in any suitable location. Forexample, the activity data 305 may be stored within the machine learningsystem 335, or may be stored in one or more remote repositories, such asin a cloud storage system. In at least one embodiment, the activity data305 is distributed across multiple data stores.

In the illustrated example, the activity data 305 includes, for eachactivity or transaction reflected in the data, a magnitude 310 of theactivity, the timing 315 of the activity, the participants 320 of theactivity, the format 325 of the activity, and zero or more naturallanguage notes 330 related to the activity.

As discussed above, the magnitude 310 generally corresponds to the sizeof the activity (e.g., the total monetary value of the transaction), thetiming 315 generally indicates when the activity or transfer occurred,the participants 320 generally correspond to various attributes of oneor more individuals related to the activity, the format 325 cangenerally indicate the form of the activity, and the notes 330 cangenerally include any natural language description associated with theactivity.

Although the illustrated activity data 305 includes several discretecomponents for conceptual clarity, in some embodiments, the activitydata 305 may include fewer components (e.g., a subset of the illustratedexamples) or additional components not depicted, depending on what isavailable and the particular implementation. Additionally, though theillustrated example provides general groupings of attributes to aidunderstanding, in some embodiments, the activity data 305 may berepresented using any number of groups. That is, the individualattributes may simply be used as input to the machine learning system335, without reference to any larger grouping or component.

Additionally, though the above discussion relates to receiving specifiedsets of data (e.g., specified attributes), in some aspects, the machinelearning system 335 may receive a broader set of data (e.g., alldiagnoses or conditions of the residents) and select which subset of thedata to consider (e.g., based on the features specified in the machinelearning model).

In the illustrated example, the activity data 305 is used to generateone or more validity scores 340, as discussed above. The validity scores340 can generally include one or more scores for one or moretransactions of one or more residents. As discussed above, the validityscores 340 can generally indicate the probability or likelihood that theactivity is valid. Further, as discussed above, the validity of a giventransaction or activity may be defined not strictly based on whether itis fraudulent, but based on whether it is considered appropriate for thespecific resident.

As discussed above, the machine learning system 335 can generate thevalidity scores 340 by identifying or extracting the relevant attributesfrom the activity data 305 (e.g., the relevant features, as indicated bythe machine learning model), and processing these attributes using theweights and architecture of the machine learning model to generate anoverall validity score 340 for the transaction based on the attributes.In some embodiments, the validity score 340 can additionally oralternatively include a classification or category (e.g., low, moderate,or high probability of being valid), determined based on one or morethreshold values for the score.

In some embodiments, the machine learning system 335 can use acombination of activity rules and machine learning to generate thevalidity scores 340. For example, the machine learning system 335 mayfirst evaluate each activity in view of a set of defined rules (whichmay include resident-specific rules). If these rules are satisfied, themachine learning system 335 may then use the machine learning model(s)to further evaluate the activity. In this way, the machine learningsystem 335 can reduce computational expense by only processing a subsetof transactions (e.g., those that are potentially valid because they donot violate any rules), while others (e.g., those that violate one ormore rules) can be immediately marked as invalid.

In the illustrated workflow 300, once a validity score 340 has beengenerated, a monitoring system 345 can evaluate its accuracy. Forexample, the monitoring system 345 may periodically or continuousevaluate the activity data 305 or other sources of information todetermine whether the activity has been flagged, reversed, investigated,or otherwise indicated to be problematic. In at least one embodiment,caregivers (which may include family members, or the residentthemselves) can note that a transaction was valid or invalid, such asvia natural language notes, or by selecting options (e.g., from a dropdown or radio button in a GUI) indicating the validity of thetransaction. Although depicted as a discrete system for conceptualclarity, in embodiments, the monitoring system 345 may be implemented asa standalone service, or as part of the machine learning system 335 (oranother system).

In the illustrated workflow, the monitoring system 345 generatesfeedback 350 based on the monitored activity. In one embodiment, themonitoring system 345 can receive explicit update from users (e.g.,caregivers) indicating whether an activity was invalid or inappropriate.In some embodiments, the monitoring system 345 generates new feedback350 each time such feedback is provided. For example, if the dataindicates that a given activity was inappropriate (e.g., because it waschallenged, blocked, or reversed by a user), the monitoring system 345may generate feedback 350 indicating the corresponding activity andattributes.

In at least one embodiment, the monitoring system 345 may also generatefeedback 350 indicating that a transaction was appropriate or valid. Forexample, if the activity data 305 indicates that a given transaction hasnot been challenged or flagged for a threshold period of time (e.g., fora week, a month, and the like), the monitoring system 345 can generatefeedback 350 indicating that the activity appears to be valid. In someembodiments, the threshold time used may be specified based on theattributes of the resident. For example, if more time may be allowed toelapse if the resident has a worse mental state and/or has no involvedfamily to identify such problems, as compared to a resident with highermental acuity and/or involved family monitoring the activity.

In the illustrated workflow 300, the machine learning system 335 usesthe feedback 350 to refine the machine learning model(s) used to scoreresident activity. For example, if the feedback 350 indicates that aspecific transaction was valid, the machine learning system 335 may usethe transaction attributes (along with the resident's attributes in someembodiments) as input to the model in order to generate a new validityscore 340. The machine learning system 335 can then compare thisgenerated score to the ground-truth (e.g., based on the newly-learnedfact that the transaction was valid), and use the resulting differenceto refine the machine learning model(s). In this way, the machinelearning system 335 can learn to generate better and more accuratevalidity scores 340 for future activity.

In some embodiments, as discussed above, the machine learning system 335may perform this model refinement whenever new feedback 350 is received.In other embodiments, the machine learning system 335 may defer therefinement until specified hours (e.g., overnight, or during non-peaktimes) to reduce the computational burden of the refinement. In one suchembodiment, the machine learning system 335 (or another system) canstore the feedback 350 to be periodically used during such definedtimes.

Example Workflow for Preprocessing Unstructured Data for ImprovedMachine Learning

FIG. 4 depicts an example workflow 400 for preprocessing unstructureddata for improved machine learning. In some embodiments, the workflow400 may be performed to process natural language data 405 for input toone or more machine learning models. In some embodiments, the workflow400 is performed by one or more remote systems (e.g., by a cloud-basedservice). In other embodiments, the workflow 400 is performed by amachine learning system, such as machine learning system 135 of FIG. 1and/or machine learning system 235 of FIG. 2 . The workflow 400 may beused during training of machine learning models (e.g., to generate thetraining input) and/or during inferencing using the models (e.g., togenerate input when generating a validity score for a transaction). Thatis, the workflow 400 may be used to transform or preprocess any naturallanguage input, prior to it being used as input to the machine learningmodel(s) during training or inferencing.

In the illustrated workflow 400, natural language data 405 is receivedfor processing to generate unstructured input data 450. In someembodiments, the workflow 400 is referred to as preprocessing toindicate that it is used to transform, refine, manage, or otherwisemodify the natural language data 405 to improve its suitability for usewith machine learning systems (or other downstream processing). In someembodiments, the natural language data 405 corresponds to notes relatingto resident activity, such as the notes 130 of FIG. 1 and/or notes 230of FIG. 2 .

In some embodiments, preprocessing the data in the natural language data405 may improve the ML training process by making the data morecompatible with natural language processing, and ultimately forconsumption by the ML model during training. Preprocessing can generallyinclude a variety operations. Though the illustrated workflow 400depicts a series of operations being performed sequentially forconceptual understanding, in embodiments, some or all of the operationsmay be performed in parallel. Similarly, in embodiments, the workflow400 may include additional operations not depicted, or may include asubset of the depicted operations.

In the illustrated example, the natural language data 405 can firstundergo text extraction 410. The text extraction 410 generallycorresponds to extracting natural language text from an unstructuredportion of the natural language data 405. For example, if the naturallanguage data 405 includes a set of notes (e.g., notes written by aresident indicating reason(s) for one or more transactions), the textextraction 410 can include identifying and extracting these notes forevaluation. In some aspects, the notes may further include structured orsemi-structured data that can undergo more traditional processing asneeded, such as a timestamp indicating when the note was written orrevised, an indication of the specific activity about which the note waswritten, the author of the note, and the like.

The normalization 415 can generally a wide variety of text normalizationprocesses, such as converting all characters in the extracted text tolowercase, converting accented or foreign language characters to ASCIIcharacters, expanding contractions, converting words to numeric formwhere applicable, converting dates to a standard date format, and thelike.

Noise removal 420 can generally include identification and removal ofportions of the extracted text that do not carry meaningful or probativevalue. That is, noise removal 420 may include removing characters,portions, or elements of the text that are not useful or meaningful inthe ultimate computing task (e.g., computing a validity score), and/orthat are not useful to human readers. For example, the noise removal 420may include removing extra white or blank spaces, tabs, or lines,removing tags such as HTML, tags, and the like.

Redundancy removal 425 may generally correspond to identifying andeliminating or removing text corresponding to redundant elements (e.g.,duplicate words), and/or the reduction of a sentence or phrase to aportion thereof that is most suitable for machine learning training orapplication. For example, the redundancy removal 425 may includeeliminating verbs (which may be unhelpful in the machine learning task),conjunctions, or other extraneous words that do not aid the machinelearning task.

Lemmatization 430 can generally include stemming and/or lemmatization ofone or more words in the extracted text. This may include convertingwords from their inflectional or other form to a base form. For example,lemmatization 430 may include replacing “holding,” “holds,” and “held”with the base form “hold.”

In one embodiment, tokenization 435 includes transforming or splittingelements in the extracted text (e.g., strings of characters) intosmaller elements, also referred to as “tokens.” For example, thetokenization 435 may include tokenizing a paragraph into a set ofsentences, tokenizing a sentence into a set of words, transforming aword into a set of characters, and the like. In some embodiments,tokenization 435 can additionally or alternatively refer to thereplacement of sensitive data with placeholder values for downstreamprocessing. For example, text such as the personal address of theresident may be replaced or masked with a placeholder (referred to as a“token” in some aspects), allowing the remaining text to be evaluatedwithout exposing this private information.

In an embodiment, root generation 440 can include reducing portion ofthe extracted text (e.g., a phrase or sentence) to its most relevantn-gram (e.g., a bigram) or root for downstream machine learning trainingand/or application.

Vectorization 445 may generally include converting the text into one ormore objects that can be represented numerically (e.g., into a vector ortensor form). For example, the vectorization 445 may use one-hotencodings (e.g., where each element in the vector indicates the presenceor absence of a given word, phrase, sentiment, or other concept, basedon the value of the element). In some embodiments, the vectorization 445can correspond to any word embedding vectors (e.g., generated using allor a portion of a trained machine learning model, such as the initiallayer(s) of a feature extraction model). This resulting object can thenbe processed by downstream natural language processing algorithms ormachine learning models to improve the ability of the system to evaluatethe text (e.g., to drive more accurate depression risk scores).

As illustrated, the various preprocessing operations in the workflow 400result in generation of unstructured input data 450. That is, theunstructured input data 450 corresponds to unstructured natural languagedata 405 that has undergone various preprocessing to improve its usewith downstream machine learning models. The preprocessing workflow 400can generally include any other suitable techniques for making textingestion more efficient or accurate (either in a training phase of amachine learning model, or while generating an inference or predictionusing a trained model). Generally, improving the results of this naturallanguage processing can have significant positive impacts on thecomputational efficiency of processing the data downstream, as well asthe eventual accuracy of the trained machine learning model(s).

In some embodiments, as discussed below, this unstructured input data450 can be processed using one or more trained machine learning modelsto generate a score, for each note in the natural language data 405,indicating a likelihood, probability, or degree with which the noteindicates that the activity is inappropriate or invalid. Such a scoremay be input to the broader model (e.g., the machine learning model 140of FIG. 1 ) to generate a validity score for the transaction. In otherembodiments, the unstructured input data 450 is itself input to thebroader machine learning model.

Example Method for Training Machine Learning Models to Evaluate ActivityValidity

FIG. 5 is a flow diagram depicting an example method 500 for trainingmachine learning models to evaluate user depression. In the illustratedembodiment, the method 500 is performed by a machine learning system,such as the machine learning system 135 of FIG. 1 , the machine learningsystem 235 of FIG. 2 , and/or the machine learning system 335 of FIG. 3. In other embodiments, the method 500 can be performed by othersystems, such as dedicated training systems.

The method 500 begins at block 505, where the machine learning systemreceives training data. As discussed above, the training data maygenerally include data relating to one or more prior transactions oractivities (such as with respect to one or more resident trustaccounts), where the data indicates, for each respective activity, a setof attributes, characteristics, or features of the activity, as well asa label indicating whether the activity was valid or appropriate.

In embodiments, receiving the training data may include receiving itfrom one or more other systems (e.g., data aggregation or preprocessingsystems), retrieving it from local or remote storage, and the like. Inone embodiment, the training data can generally include multiple sets ofresident attributes, where each set of attributes indicates theattributes or characteristics of a resident during a window of timeimmediately preceding and/or at the time of a transaction (e.g., withina defined window, such as one month prior, six months prior, and thelike).

In some embodiments, the training data includes data from multipleresidents, allowing a model to be trained to reflect broader patterns(e.g., average spending habits for residents, based at least in part ontheir age, demographics, and the like). In some embodiments, thetraining data includes data from a single resident, allowing a model tobe trained or refined based on patterns for the specific resident.

At block 510, the machine learning system selects one of the exemplarsincluded in the training data. As used herein, an exemplar refers to aset of attributes (e.g., corresponding to a defined or learned set offeatures) associated with a given activity. For example, the exemplarmay include indications as to the magnitude and timing of thetransaction, the demographics of the resident, the identity of therecipient, one or more natural language notes describing a reason forthe activity, and the like.

Generally, the exemplar may be selected using any suitable criteria(including randomly or pseudo-randomly), as the machine learning systemwill use all exemplars during the training process. Although theillustrated example depicts selecting exemplars sequentially forconceptual clarity, in embodiments, the machine learning system mayselect and/or process multiple exemplars in parallel.

At block 515, the machine learning system trains the machine learningmodel based on the selected exemplar. For example, the machine learningsystem may use the attributes indicated in the exemplar to generate anoutput validity score or classification for the activity. As discussedabove, this validity score can generally indicate the probability thatthe activity is valid or appropriate, with respect to the individualresident. In one such embodiment, lower values may indicate a lowerprobability that the activity is invalid or inappropriate, while ahigher value indicates that the activity is more likely to beproblematic.

During training, this score can then be compared against a ground-truthassociated with the selected exemplar (e.g., an indication as to whetherthe activity was invalid). Based on this comparison, the parameters ofthe machine learning model can be updated. For example, if the generatedvalidity score is relatively low but the activity was, in fact, labeledas invalid, the machine learning system may modify the parameters suchthat the attributes in the exemplar result in a larger validity scorebeing generated.

At block 520, the machine learning system determines whether at leastone additional exemplar remains in the training data. If so, the method500 returns to block 510. If not, the method 500 continues to block 525.Although the illustrated example depicts iteratively refining the modelusing individual exemplars (e.g., using stochastic gradient descent), insome embodiments, the machine learning system can refine the model basedon multiple exemplars simultaneously (e.g., using batch gradientdescent).

At block 525, the machine learning system deploys the trained machinelearning model for runtime use. In embodiments, this may includedeploying the model locally (e.g., for runtime use by the machinelearning system) and/or to one or more remote systems. For example, themachine learning system may distribute the trained model to one or moredownstream systems, each responsible for one or more residentialfacilities (e.g., to one or more servers associated with specific carefacilities, where these servers may use the model to evaluate theactivity of residents at the specific facility).

Example Method for Using Trained Machine Learning Models to GenerateValidity Scores

FIG. 6 is a flow diagram depicting an example method 600 for usingtrained machine learning models to generate validity scores andimplement appropriate interventions. In the illustrated embodiment, themethod 600 is performed by a machine learning system, such as themachine learning system 135 of FIG. 1 , the machine learning system 235of FIG. 2 , and/or the machine learning system 335 of FIG. 3 . In otherembodiments, the method 600 can be performed by other systems, such asdedicated inferencing systems.

At block 605, the machine learning system receives activity data (e.g.,activity data 205 of FIG. 2 ). As discussed above, the activity data mayinclude data or information associated with an activity (e.g., atransaction) of a resident (also referred to as a patient or a user insome aspects). In some embodiments, the activity data includesattributes for a transaction with respect to a trust account of aresident residing in a long-term care facility.

In an embodiment, the activity data can generally include informationrelating to one or more transactions, such as attributes of theparticipants (e.g., the resident demographics, recipient identity, andthe like), the magnitude of the activity, the timing of the activity,the format of the activity, one or more natural language notesdescribing the activity, and the like. In some embodiments, the receivedactivity data corresponds to current information. That is, the activitydata may correspond to a transaction that is current (e.g., that hasjust occurred, that is being requested, that is ongoing, and the like).

In at least one aspect, the activity data is received because a newtransaction has occurred. That is, the activity data may be provided tothe machine learning system (e.g., using a push technique) based ondetermining that a new transaction is either occurring, is requested, orhas just completed. In other embodiments, the machine learning systemcan retrieve or request the activity data, and evaluate it to determinewhether any new transactions have occurred.

In some embodiments, the received activity data includes datacorresponding to a defined set of features that are used by the machinelearning model. In some embodiments, the activity data can includeadditional data beyond these features (e.g., information about allconditions or diagnoses of the resident, regardless of any specificconditions that are used in the machine learning model). In one suchembodiment, the machine learning system can identify and extract therelevant attributes or data, based on the indicated features for themodel. In other embodiments, the received activity data may include onlythe specific data corresponding to the indicated features (e.g., anothersystem may filter the data based on the features, thereby protectingdata that is not needed to build the model). In still another aspect,such unused features or attributes may simply be associated with aweight of zero in the model.

At block 610, the machine learning system selects one of the activitiesindicated in the activity data. In some embodiments, the machinelearning system can select from a subset of activities (e.g., onlyevaluating withdrawals or disbursements). In other embodiments, themachine learning system may select from any type of activity. In atleast one embodiment, the machine learning system can use a differentmodel depending on the type of activity. For example, the machinelearning system may train and/or use a first model to evaluate thevalidity of withdrawals or disbursements, while a second model istrained and/or used to evaluate the validity of deposits.

Generally, the activity may be selected using any suitable criteria(including randomly or pseudo-randomly), as the machine learning systemwill evaluate all of the activities reflected in the activity dataduring the method 600. Although the illustrated example depictsselecting activities sequentially for conceptual clarity, inembodiments, the machine learning system may select and/or processmultiple transactions in parallel.

At block 615, the machine learning system extracts a set of relevantattributes, from the activity data for the selected activity, based onthe specified features that are used by the machine learning model. Forexample, the machine learning system may extract the magnitude andtiming of the activity, the recipient, and the like. In someembodiments, if a given attribute cannot be found in the activity data(e.g., if the activity data does not indicate the recipient of theselected transaction), the machine learning system can use predefinedvalue (e.g., a value of zero or a null value), or otherwise use somevalue that causes the model to ignore the corresponding feature. Oneexample of extracting activity attributes is discussed in more detailbelow with reference to FIG. 7 .

At block 620, the machine learning system determines whether theextracted attributes satisfy one or more defined activity rules. Forexample, the machine learning system may determine whether the activityis above a defined maximum magnitude (e.g., defined by the resident orby a caregiver or family member). One example of evaluating activityrules is discussed in more detail below with reference to FIG. 9 .

If at least one rule is violated, the machine learning system canrefrain from any further processing on the selected activity, and themethod 600 continues to block 630. That is, the machine learning systemmay label the activity as invalid (or potentially invalid), and refrainfrom using the machine learning model to further evaluate it. This cansignificantly reduce the computational expense of evaluating theresident activity. In other embodiments, the machine learning system mayuse the machine learning model to evaluate the activity, even if one ormore rules are violated. Additionally, though the illustrated exampledepicts use of the activity rules prior to using the machine learningmodel, in some aspects, the machine learning system may not use anyrules at all (or the rules may be incorporated into the machine learningmodel).

If no rules were violated (or if the machine learning system determinesto use the machine learning model regardless of any rule violations),the method 600 continues to block 625. At block 625, the machinelearning system processes the identified/extracted attributes using atrained machine learning model. As discussed above, the machine learningmodel may generally specify a set of parameters (e.g., weights and/orbiases) learned during training. These learned parameters allow themachine learning system to generate a validity score indicating aprobability that the selected activity is valid or appropriate, asdiscussed above. In some embodiments, the machine learning system canadditionally or alternatively generate a label for the activity (such asby applying one or more thresholds to the generated validity score). Forexample, the machine learning system may label the activity as “valid,”“invalid,” “ambiguous,” and the like. One example of generating thevalidity score is discussed in more detail below with reference to FIG.10 .

At block 630, the machine learning system determines whether there is atleast one additional activity remaining to be evaluated. If so, themethod 600 returns to block 610. If not, the method 600 continues toblock 635.

At block 635, the machine learning system outputs the generated validityscore. In embodiments, this may include, for example, outputting it viaa display or terminal (e.g., for a caregiver or user to review). In someembodiments, block 635 includes outputting the validity score to one ormore other systems (e.g., a storage repository, or other systems thatevaluate the validity information to inform allocation or interventiondecisions), and the like. In at least one embodiment, the machinelearning system only outputs the validity score if one or more criteriaare satisfied, such as a threshold validity (e.g., where sufficientlysuspicious activity, or activity with a validity score below athreshold, are output for review).

At block 640, the machine learning system (or another system, such asthe intervention system 245 of FIG. 2 ) can optionally select one ormore interventions based on the generated validity score. That is, asdiscussed above, the system may select one or more prophylacticinterventions to reduce potential harm based on the activity validity.

In one such embodiment, if the machine learning system determines thatthe validity scores are problematic, the machine learning system mayallocate or suggest additional resources to the resident (such asadditional therapy sessions or mental evaluations), instruct a user(e.g., a caregiver) to reach out to the resident to ask about thetransaction, prescribe or suggest medications for the resident, and thelike. In some embodiments, the system can use other specific andtargeted non-medical interventions for the specific resident. Forexample, the system may provide or suggest financial education for theresident.

In some embodiments, the machine learning system can selectinterventions based on whether trends in the validity score(s). Forexample, if the average validity score for the resident has decreasedover time (indicating that the resident is engaging in more suspicioustransactions), or if the average validity score falls below a threshold,the system may determine that one or more interventions are warranted.

At block 630, the system optionally implements the selectedintervention(s). This may include a wide variety of actions, includingrevised resource allocations, targeted mental evaluations, and the like.One example for implementing interventions is discussed below in moredetail with reference to FIG. 11 .

Example Method for Extracting Activity Attributes for Machine Learning

FIG. 7 is a flow diagram depicting an example method 700 for extractingactivity attributes for improved machine learning. In the illustratedembodiment, the method 700 is performed by a machine learning system,such as the machine learning system 135 of FIG. 1 , the machine learningsystem 235 of FIG. 2 , and/or the machine learning system 335 of FIG. 3. In other embodiments, the method 700 can be performed by othersystems, such as dedicated training or inference systems. In someembodiments, the method 700 provides additional detail for block 615 ofFIG. 6 .

At block 705, the machine learning system extracts or determines themagnitude of the activity. For example, the machine learning system maydetermine the absolute magnitude (e.g., the dollar amount). In someembodiments, extracting the magnitude includes determining the relativemagnitude as compared to other activity. For example, the machinelearning system may determine the average magnitude of activity (eitherall time or for a specific window) for the resident or across allresidents (or all similar residents), and determine the magnitude of thecurrent activity based on how it compares to the average. For example,magnitudes that are similar to that average may be scaled to a valuenear 100%, where values above and below the average are scaledappropriately (e.g., to 150% for a magnitude that is 50% larger, or to50% for a magnitude that is half the average amount). In at least oneembodiment, the machine learning system can compare the current activityagainst other similar activities (e.g., paid to the same recipient forthe same or similar services).

At block 710, the machine learning system extracts or determines thetiming of the activity. For example, as discussed above, the machinelearning system may determine the time of day for the activity, the timeof the week, the time of the month, the time of year, and the like.

At block 715, the machine learning system can extract information aboutthe recipient of the activity (or depositor, in the case of a deposit).For example, as discussed above, the machine learning system maydetermine whether the recipient is a new recipient that has not receiveddisbursements from the resident before (or from any resident in thefacility), whether the recipient is an individual or legal entity,whether the recipient is local or remote, and the like.

At block 720, the machine learning system can extract one or moreattributes for the resident. For example, as discussed above, themachine learning system may extract the resident's demographics, age,gender, marital status (and, in some embodiments, whether the maritalstatus recently changed, such as within a defined window of time), race,conditions or diagnoses, mental state, and the like.

At block 725, the machine learning system extracts or determines theformat of the activity. For example, as discussed above, the machinelearning system may determine whether the activity involved a cashdisbursement, a check made payable to a specific entity or individual, acheck made payable to cash, an electronic or online transfer of funds,and the like.

At block 730, the machine learning system extracts natural languageinput for the model. For example, the machine learning system mayidentify and evaluate natural language notes (e.g., notes 130 in FIG. 1, notes 230 in FIG. 2 , and/or notes 330 in FIG. 3 ). In someembodiments, as discussed above, the natural language input cangenerally correspond to written notes indicating a reason for theactivity. In some embodiments, the natural language input can includeverbal or recorded notes. For example, a caregiver may record theresident or recipient explaining the reason for the activity. In onesuch embodiment, one or more speech-to-text techniques can be used totranscribe the note for processing.

In at least one embodiment, the machine learning system can perform oneor more preprocessing operations on the natural language text to extractthe input. For example, as discussed above with reference to FIG. 4 ,the machine learning system may extract the text itself, normalize it,remove noise and/or redundant elements, lemmatize it, tokenize it,generate one or more roots for it, vectorize it, and the like. Oneexample for extracting and evaluating the natural language input isdescribed in more detail below with reference to FIG. 8 .

Using the method 700, the machine learning system can therefore extractrelevant attributes to train machine learning model(s) to predictactivity validity, or to be used as input to trained models in order togenerate predicted validity during runtime.

Example Method for Preprocessing Unstructured Data for Machine Learning

FIG. 8 is a flow diagram depicting an example method 800 forpreprocessing unstructured input data to improve machine learningresults. In the illustrated embodiment, the method 800 is performed by amachine learning system, such as the machine learning system 135 of FIG.1 , the machine learning system 235 of FIG. 2 , and/or the machinelearning system 335 of FIG. 3 . In other embodiments, the method 800 canbe performed by other systems, such as dedicated natural languageprocessing systems or preprocessing systems. In some embodiments, themethod 800 provides additional detail for the workflow 400 of FIG. 4 ,and/or for block 730 in FIG. 7 .

Generally, each block in the method 800 is optional, and the machinelearning system may perform all of the indicated operations, or somesubset thereof. The machine learning system may also use additionalpreprocessing steps not depicted in the illustrated example.Additionally, though the illustrated example suggests a linear andsequential process for conceptual clarity, in embodiments, theoperations may be performed in any order (including entirely orpartially in parallel).

At block 805, the machine learning system can normalize the extractednatural language text. As discussed above, this normalization mayinclude a wide variety of text normalization processes, such asconverting all characters in the extracted text to lowercase, convertingaccented or foreign language characters to ASCII characters, expandingcontractions, converting words to numeric form where applicable,converting dates to a standard date format, and the like.

At block 810, the machine learning system removes noise from the text.As discussed above, noise removal may include identification and removalof portions of the extracted text that do not carry meaningful orprobative value, such as characters, portions, or elements of the textthat are not useful or meaningful in the ultimate computing task (e.g.,computing a risk score), and/or that are not useful to human readers.For example, the noise removal may include removing extra white or blankspaces, tabs, or lines, removing tags such as HTML tags, and the like.

At block 815, the machine learning system can eliminate redundantelements or terms from the text. As discussed above, this may includeidentifying and eliminating or removing text corresponding to redundantelements (e.g., duplicate words), and/or the reduction of a sentence orphrase to a portion thereof that is most suitable for machine learningtraining or application. For example, the redundancy elimination mayinclude eliminating verbs (which may be unhelpful in the machinelearning task), conjunctions, or other extraneous words that do not aidthe machine learning task.

At block 820, the machine learning system lemmatizes the text. Asdiscussed above, text lemmatization can generally include stemmingand/or lemmatization of one or more words in the extracted text. Thismay include converting words from their inflectional or other form to abase form. For example, lemmatization may include replacing “holding,”“holds,” and “held” with the base form “hold.”

At block 825, the machine learning system tokenizes the text. In anembodiment, tokenizing the text may include transforming or splittingelements in the extracted text (e.g., strings of characters) intosmaller elements, also referred to as “tokens.” For example, thetokenization may include tokenizing a paragraph into a set of sentences,tokenizing a sentence into a set of words, transforming a word into aset of characters, and the like. In some embodiments, tokenization canadditionally or alternatively refer to the replacement of sensitive datawith placeholder values for downstream processing. For example, textsuch as the personal address of the resident may be replaced or maskedwith a placeholder (referred to as a “token” in some aspects), allowingthe remaining text to be evaluated without exposing this privateinformation.

At block 830, the machine learning system can reduce the text to one ormore roots. As discussed above, the root generation can include reducingportion of the extracted text (e.g., a phrase or sentence) to its mostrelevant n-gram (e.g., a bigram) or root for downstream machine learningtraining and/or application.

At block 835, the machine learning system can vectorize the text.Generally, vectorization may include converting the text into one ormore objects that can be represented numerically (e.g., into a vector ortensor form). For example, the machine learning system may use one-hotencodings (e.g., where each element in the vector indicates the presenceor absence of a given word, phrase, sentiment, or other concept, basedon the value of the element). In some embodiments, the machine learningsystem can generate one or more word embedding vectors (e.g., generatedusing all or a portion of a trained machine learning model, such as theinitial layer(s) of a feature extraction model). This resulting objectcan then be processed by downstream natural language processingalgorithms or machine learning models to improve the ability of thesystem to evaluate the text (e.g., to drive more accurate validityprediction).

Example Method for Evaluating Activity Rules to Monitor Validity

FIG. 9 is a flow diagram depicting an example method 900 for evaluatingactivity rules to monitor activity validity. In the illustratedembodiment, the method 900 is performed by a machine learning system,such as the machine learning system 135 of FIG. 1 , the machine learningsystem 235 of FIG. 2 , and/or the machine learning system 335 of FIG. 3. In other embodiments, the method 900 can be performed by othersystems, such as dedicated inferencing systems. In some embodiments, themethod 900 provides additional detail for block 620 in FIG. 6 .

At block 905, the machine learning system evaluates anyresident-specific rules. That is, the machine learning system candetermine whether a given activity (e.g., a given transaction in a trustaccount) satisfies one or more resident-specific defined rules. In someembodiments, residents can define such personal rules. In someembodiments, others (such as caregivers or family) can define one ormore resident-specific rules.

The resident-specific rules can generally include a wide variety ofconditions or restrictions based on the attributes of a transaction. Forexample, the resident-specific rules may forbid or flag specificrecipients or classes of recipients (or require that the recipient ofthe activity be on a pre-approved list), forbid or flag activity thatexceeds a defined magnitude, forbid or flag activity that fails certaintiming criteria, such as overnight, and the like.

At block 910, the machine learning system evaluates the resident'scurrent status (at the time of the activity). For example, the machinelearning system may determine whether the resident currently resides inthe facility (as opposed to, for example, a hospital or in-patienttreatment facility). If the resident is not residing in the facility (orwas not residing in the facility at the time of the transaction), themachine learning system may determine that a rule is violated becausethe resident should not be incurring expense when not present.

At block 915, the machine learning system determines whether the currentactivity appears to duplicate any other activity (e.g., due to error ormaliciousness). For example, the machine learning system may determinewhether the activity is similar to other activity within a definedtimeframe (e.g., other activity with the same magnitude, other activityto the same recipient, and the like). If so, the machine learning systemmay determine that the duplicate rule is violated.

At block 920, the machine learning system determines whether any of therules were violated. Although the illustrated example depicts sequentialevaluation of each rule before arriving at block 920, in someembodiments, when a rule is found to be violated the method 900 canproceed directly to block 920 or 925, bypassing further rule evaluation.This can reduce computational expense and latency.

If any rules were violated, the method 900 continues to block 925, wherethe machine learning system flags the activity as potentially invalid.In some embodiments, the machine learning system can thereafter forgoprocessing the activity using the machine learning model, which cansubstantially reduce computational expense. In other embodiments, themachine learning system may proceed to use the machine learning model toevaluate the activity regardless. In at least one embodiment, if anyrules are violated, the machine learning system can output the activityand validity determination (or otherwise initiate one or moreinterventions).

If, at block 920, the machine learning system determines that theactivity does not violate any rules, the method 900 continues to block930. At block 930, the machine learning system flags the activity aspotentially valid, or otherwise refrains from flagging it as(potentially) invalid. In some aspects, as discussed above, the machinelearning system may then proceed to evaluate the activity using one ormore trained machine learning models.

Example Method for Using Machine Learning to Evaluate Activity Validity

FIG. 10 is a flow diagram depicting an example method 1000 for usingmachine learning to evaluate activity validity. In the illustratedembodiment, the method 1000 is performed by a machine learning system,such as the machine learning system 135 of FIG. 1 , the machine learningsystem 235 of FIG. 2 , and/or the machine learning system 335 of FIG. 3. In other embodiments, the method 1000 can be performed by othersystems, such as dedicated inferencing systems. In some embodiments, themethod 1000 provides additional detail for block 625 in FIG. 6 .

At block 1005, the machine learning system generate an initial validityscore for the activity based on its attributes and characteristics. Forexample, as discussed above, the machine learning system can generate ascore indicating the probability that the activity is valid based on themagnitude of it, the timing of it, the recipient(s), the attributes ofthe resident, the reason(s) or note(s), and the like.

At block 1010, the machine learning system determines whether thegenerated initial validity score satisfies one or more criteria. Forexample, the machine learning system may determine whether the validityscore is below a threshold (e.g., whether the activity is sufficientlysuspicious). If the criteria are not satisfied, the method 1000continues to block 1015. If the criteria are satisfied, the machinelearning system may label the activity as invalid (or presumptivelyinvalid), and the method 1000 terminates at block 1025. Though theillustrated example depicts bypassing further processing on activitythat is presumptively invalid by itself (thereby reducing computationalexpense), in some embodiments, the block 1010 is skipped and the method1000 continues to block 1015 regardless.

At block 1015, the machine learning system retrieves contextual data forthe current activity. The contextual data can include a variety of datathat is exogenous to the specific activity data, such as social media(e.g., posts of the resident indicating an upcoming trip), otheractivities (e.g., transactions just before or after the currentactivity), and the like.

At block 1020, the machine learning system can generate a contextualvalidity score based on this contextual data. In some embodiments, asingle machine learning model is used to generate the validity scoresdiscussed above, as well as contextual scores. For example, thecontextual data may be provided as input to the machine learning modeldiscussed above. In some embodiments, a second trained machine learningmodel is used for this contextual evaluation. As one example, recenttransactions may result in reduced or increased suspicion for thecurrent activity, or social media posts or other data may providecontext and increase the likelihood of validity. For example, in someembodiments, the validity scores of surrounding activity, the cadence ofthe surrounding activity (e.g., the frequency or temporal closeness ofthe surrounding activity), and the like may be used as input to one ormore machine learning models (or as input to the overall model discussedabove) to generate a contextual score for the current activity. Themethod 1000 then terminate at block 1025.

Example Method for Initiating Interventions based on Machine LearningPredictions

FIG. 11 is a flow diagram depicting an example method 1100 forinitiating interventions based on machine learning predictions. In theillustrated embodiment, the method 1100 is performed by a machinelearning system, such as the machine learning system 135 of FIG. 1 , themachine learning system 235 of FIG. 2 , and/or the machine learningsystem 335 of FIG. 3 . In other embodiments, the method 1100 can beperformed by other systems, such as dedicated inferencing orintervention systems. In some embodiments, the method 1100 providesadditional detail for block 645 in FIG. 6 .

At block 1100, the machine learning system can optionally freezeactivity for the resident. For example, if the suspicious or invalidactivity is ongoing (e.g., more invalid transactions may occur) ornot-yet completed, the machine learning system can freeze any furtheractivity on the resident's account, thereby preventing harm.

At block 1110, the machine learning system can optionally alert theresident about the invalid activity. This may allow the resident toquickly respond (e.g., by locking or freezing other accounts), or toindicate that the activity was, in fact, valid.

At block 1115, the machine learning system can optionally alert one ormore caregivers for the resident. For example, the machine learningsystem can identify a trusted caregiver such as a nurse, a trustedfamily member, and the like. Alerting such trusted users can enable themto quickly respond on behalf of residents who may be unable to respondfor themselves (e.g., due to mental or physical condition).

At block 1120, the machine learning system can optionally initiate anupdated resident evaluation, such as a new mental evaluation for theresident. For example, the machine learning system may suggest orinstruct that a caregiver perform a mental evaluation to determine theresident's state, such as whether they are aware of or understand theactivity, or whether they need additional assistance in managing theirfunds.

Example Method for Refining Machine Learning Models

FIG. 12 is a flow diagram depicting an example method 1200 for refiningmachine learning models to generate and evaluate care plans. In theillustrated embodiment, the method 1200 is performed by a machinelearning system, such as the machine learning system 135 of FIG. 1, themachine learning system 235 of FIG. 2 , and/or the machine learningsystem 335 of FIG. 3 . In other embodiments, the method 1200 can beperformed by other systems, such as dedicated inferencing, training, orrefinement systems. In some embodiments, the method 1200 providesadditional detail for the workflow 300 of FIG. 3 .

At block 1205, the machine learning system can generate one or morevalidity scores for a resident during runtime. That is, the machinelearning system may deploy and use a trained machine learning model toprocess activity data (e.g., transactions associated with a residenttrust account) in order to generate validity scores for the transactionsreflected in the data. For example, the machine learning system mayautomatically use the model(s) to generate validity scores for alltransactions of all or a subset of the residents in a residential carefacility.

At block 1210, the machine learning system (or another system, such asthe monitoring system 345 of FIG. 3 ) determines whether any feedback isavailable with respect to the validity score(s). For example, themachine learning system may determine whether the resident or anotheruser indicated that any of the activity was valid or invalid. In someembodiments, determining whether feedback is available can includedetermining whether one or more defined criteria are satisfied, such aswhether a defined period of time has elapsed. In one such embodiment,the machine learning system can determine whether a defined period oftime has elapsed without receiving any alerts or otherwise canceling orreversing the activity. If so, the machine learning system may determinethat feedback is available indicating or suggesting that the activity isvalid.

If, at block 1210, the machine learning system determines that feedbackis not available, the method 1200 returns to block 1205. If at least onepiece of feedback is available (e.g., confirmation or rejection of atleast one activity), the method 1200 continues to block 1215, where themachine learning system refines the trained machine learning model(s)based on this updated information. For example, if the generatedvalidity score for an activity was relatively low, but the new dataindicates that the activity was valid, the machine learning system mayuse the prior set of activity attributes (used to generate the originalscore) as exemplar input that should be correlated with a high validityscore. Similarly, if the generated validity score was relatively highbut the new data indicates the activity was invalid, the machinelearning system may refine the model to indicate that such attributesshould be correlated to a lower validity score.

The method 1200 then returns to block 1205. In this way, the machinelearning system can continuously or periodically refine the machinelearning model(s), thereby ensuring that they continue to producehighly-accurate validity score predictions for resident activity.

Example Method for Generating Validity Scores using Machine Learning

FIG. 13 is a flow diagram depicting an example method for generatingvalidity scores using trained machine learning models. In theillustrated embodiment, the method 1300 is performed by a machinelearning system, such as the machine learning system 135 of FIG. 1 , themachine learning system 235 of FIG. 2 , and/or the machine learningsystem 335 of FIG. 3 . In other embodiments, the method 1300 can beperformed by other systems, such as dedicated inferencing systems.

At block 1305, activity data (e.g., activity data 205 of FIG. 2 )describing a first activity for a financial account of a first residentin a residential care facility is received.

At block 1310, a first set of attributes (e.g., magnitude 210, timing215, participants 220, format 225, and/or notes 230 of FIG. 2 )corresponding to the first activity is extracted from the activity data,comprising determining a first attribute of the first set of attributesby processing unstructured text associated with the first activity(e.g., notes 230 of FIG. 2 ) using one or more natural languageprocessing techniques.

At block 1315, a first validity score (e.g., validity score 240 of FIG.2 ) is generated by processing the first set of attributes using atrained machine learning model (e.g., machine learning model 140 of FIG.1 ), wherein the first validity score indicates a probability that thefirst activity is valid.

At block 1320, in response to determining that the first validity scoreis below a defined threshold, one or more interventions (e.g.,interventions 250 of FIG. 2 ) are initiated for the first resident.

Example Method for Training Machine Learning Models to Improve ActivityEvaluation

FIG. 14 is a flow diagram depicting an example method for trainingmachine learning models to improve activity evaluation. In theillustrated embodiment, the method 1400 is performed by a machinelearning system, such as the machine learning system 135 of FIG. 1 , themachine learning system 235 of FIG. 2 , and/or the machine learningsystem 335 of FIG. 3 . In other embodiments, the method 1400 can beperformed by other systems, such as dedicated training or refinementsystems.

At block 1405, historical data (e.g., historical data 105 of FIG. 1 )describing activity for a financial account of a first resident in aresidential care facility is received.

At block 1410, a set of attributes (e.g., magnitude 110, timing 115,participants 120, format 125, and/or notes 130 of FIG. 1 ) correspondingto an activity is extracted from the historical data, comprisingdetermining a first attribute of the set of attributes by processingunstructured text associated with the activity (e.g., notes 130 of FIG.1 ) using one or more natural language processing techniques.

At block 1415, a machine learning model (e.g., machine learning model140 of FIG. 1 ) is trained to generate validity scores based on the setof attributes, wherein the validity scores indicate probability thatfinancial account activity is valid.

At block 1420, the trained machine learning model is deployed.

Example Processing System for Improved Machine Learning

FIG. 15 depicts an example computing device 1500 configured to performvarious aspects of the present disclosure. Although depicted as aphysical device, in embodiments, the computing device 1500 may beimplemented using virtual device(s), and/or across a number of devices(e.g., in a cloud environment). In one embodiment, the computing device1500 corresponds to the machine learning system 135 of FIG. 1 , themachine learning system 235 of FIG. 2 , and/or the machine learningsystem 335 of FIG. 3 .

As illustrated, the computing device 1500 includes a CPU 1505, memory1510, storage 1515, a network interface 1525, and one or more I/Ointerfaces 1520. In the illustrated embodiment, the CPU 1505 retrievesand executes programming instructions stored in memory 1510, as well asstores and retrieves application data residing in storage 1515. The CPU1505 is generally representative of a single CPU and/or GPU, multipleCPUs and/or GPUs, a single CPU and/or GPU having multiple processingcores, and the like. The memory 1510 is generally included to berepresentative of a random access memory. Storage 1515 may be anycombination of disk drives, flash-based storage devices, and the like,and may include fixed and/or removable storage devices, such as fixeddisk drives, removable memory cards, caches, optical storage, networkattached storage (NAS), or storage area networks (SAN).

In some embodiments, I/O devices 1535 (such as keyboards, monitors,etc.) are connected via the I/O interface(s) 1520. Further, via thenetwork interface 1525, the computing device 1500 can be communicativelycoupled with one or more other devices and components (e.g., via anetwork, which may include the Internet, local network(s), and thelike). As illustrated, the CPU 1505, memory 1510, storage 1515, networkinterface(s) 1525, and I/O interface(s) 1520 are communicatively coupledby one or more buses 1530.

In the illustrated embodiment, the memory 1510 includes a validitycomponent 1550, a preprocessing component 1555, and an interventioncomponent 1560, which may perform one or more embodiments discussedabove. Although depicted as discrete components for conceptual clarity,in embodiments, the operations of the depicted components (and othersnot illustrated) may be combined or distributed across any number ofcomponents. Further, although depicted as software residing in memory1510, in embodiments, the operations of the depicted components (andothers not illustrated) may be implemented using hardware, software, ora combination of hardware and software.

In one embodiment, the validity component 1550 is used to generate orextract input data and train machine learning models (e.g., based onhistorical data), such as discussed above with reference to FIGS. 1-3,5-7 , and/or 9-14. In some embodiments, the validity component 1550 isalso used to generate validity scores using trained models, such asdiscussed above with reference to FIGS. 1-3, 5-7 , and/or 9-14. Thepreprocessing component 1555 may generally be used to perform any neededor desired preprocessing on the data, such as text preprocessing (e.g.,including normalization), as discussed above with reference to FIGS. 4and 8 . The intervention component 1560 may be configured to use thegenerated risk scores to select, generate, and/or implement variousinterventions (such as alerts, prophylactic and specific/personalizedinterventions, and the like), as discussed above with reference to FIGS.2, 6, 11 , and/or 14.

In the illustrated example, the storage 1515 includes activity data 1570(which may correspond to historical data, such as historical data 105 ofFIG. 1 , and/or to current activity data, such as activity data 205 ofFIG. 2 and/or activity data 305 of FIG. 3 ), as well as a validity model1575 (which may correspond to the machine learning model 140 of FIG. 1). Although depicted as residing in storage 1515, the activity data 1570and validity model 1575 may be stored in any suitable location,including memory 1510.

EXAMPLE CLAUSES

Implementation examples are described in the following numbered clauses:

-   -   Clause 1: A method, comprising: receiving activity data        describing a first activity for a financial account of a first        resident in a residential care facility; extracting, from the        activity data, a first set of attributes corresponding to the        first activity, comprising: determining a first attribute of the        first set of attributes by processing unstructured text        associated with the first activity using one or more natural        language processing techniques; generating a first validity        score by processing the first set of attributes using a trained        machine learning model, wherein the first validity score        indicates a probability that the first activity is valid; and in        response to determining that the first validity score is below a        defined threshold, initiating one or more interventions for the        first resident.    -   Clause 2: The method of Clause 1, wherein determining the first        attribute comprises: identifying a field comprising natural        language text describing a reason for the first activity; and        generating a vector representation of the natural language text.    -   Clause 3: The method of any one of Clauses 1-2, wherein        determining the first attribute further comprises preprocessing        the natural language text prior to generating the vector        representation, comprising: normalizing the natural language        text; and removing noise from the normalized natural language        text.    -   Clause 4: The method of any one of Clauses 1-3, wherein the        first set of attributes further comprise: at least one attribute        corresponding to a magnitude of the first activity; at least one        attribute corresponding to a recipient of the first activity; at        least one attribute corresponding to a time of the first        activity; at least one attribute corresponding to a form of the        first activity; and at least one attribute corresponding to        characteristics of the first resident.    -   Clause 5: The method of any one of Clauses 1-4, wherein the one        or more interventions comprise: identifying a trusted caregiver        of the first resident; and outputting an alert to the trusted        caregiver, wherein the alert comprises: an indication of the        first activity; and a suggestion to question the first resident        regarding the first activity.    -   Clause 6: The method of any one of Clauses 1-5, wherein the        activity data further describes a plurality of activities for        the financial account of the first resident, the method further        comprising: for each respective activity of the plurality of        activities: extracting, from the activity data, a respective set        of attributes corresponding to the respective activity; and        generating a respective validity score by processing the        respective set of attributes using the trained machine learning        model.    -   Clause 7: The method of any one of Clauses 1-6, wherein the        machine learning model was trained by: receiving a pre-trained        machine learning model previously trained based on historical        data for a plurality of residents; and generating the machine        learning model by fine-tuning the pre-trained machine learning        model using the activity data for the first resident.    -   Clause 8: The method of any one of Clauses 1-7, wherein the        financial account of the first resident corresponds to funds        managed by the residential care facility on behalf of the first        resident.    -   Clause 9: A method, comprising, receiving historical data        describing activity for a financial account of a first resident        in a residential care facility; extracting, from the historical        data, a set of attributes corresponding to an activity,        comprising: determining a first attribute of the set of        attributes by processing unstructured text associated with the        activity using one or more natural language processing        techniques; training a machine learning model to generate        validity scores based on the set of attributes, wherein the        validity scores indicate probability that financial account        activity is valid; and deploying the trained machine learning        model.    -   Clause 10: The method of Clause 9, wherein determining the first        attribute comprises: identifying a field comprising natural        language text describing a reason for the activity; and        generating a vector representation of the natural language text.    -   Clause 11: The method of any one of Clauses 9-10, wherein        determining the first attribute further comprises preprocessing        the natural language text prior to generating the vector        representation, comprising: normalizing the natural language        text; and removing noise from the normalized natural language        text.    -   Clause 11: The method of any one of Clauses 9-10, wherein the        set of attributes further comprise: at least one attribute        corresponding to a magnitude of the activity; at least one        attribute corresponding to a recipient of the activity; at least        one attribute corresponding to a time of the activity; at least        one attribute corresponding to a form of the activity; and at        least one attribute corresponding to characteristics of the        first resident.    -   Clause 11: The method of any one of Clauses 9-10, wherein        training the machine learning model comprises: receiving a        pre-trained machine learning model previously trained based on        historical data for a plurality of residents; and generating the        machine learning model by fine-tuning the pre-trained machine        learning model using the historical data for the first resident.    -   Clause 14: A system, comprising: a memory comprising        computer-executable instructions; and one or more processors        configured to execute the computer-executable instructions and        cause the processing system to perform a method in accordance        with any one of Clauses 1-13.    -   Clause 15: A system, comprising means for performing a method in        accordance with any one of Clauses 1-13.    -   Clause 16: A non-transitory computer-readable medium comprising        computer-executable instructions that, when executed by one or        more processors of a processing system, cause the processing        system to perform a method in accordance with any one of Clauses        1-13.    -   Clause 17: A computer program product embodied on a        computer-readable storage medium comprising code for performing        a method in accordance with any one of Clauses 1-13.

Additional Considerations

The preceding description is provided to enable any person skilled inthe art to practice the various embodiments described herein. Theexamples discussed herein are not limiting of the scope, applicability,or embodiments set forth in the claims. Various modifications to theseembodiments will be readily apparent to those skilled in the art, andthe generic principles defined herein may be applied to otherembodiments. For example, changes may be made in the function andarrangement of elements discussed without departing from the scope ofthe disclosure. Various examples may omit, substitute, or add variousprocedures or components as appropriate. For instance, the methodsdescribed may be performed in an order different from that described,and various steps may be added, omitted, or combined. Also, featuresdescribed with respect to some examples may be combined in some otherexamples. For example, an apparatus may be implemented or a method maybe practiced using any number of the aspects set forth herein. Inaddition, the scope of the disclosure is intended to cover such anapparatus or method that is practiced using other structure,functionality, or structure and functionality in addition to, or otherthan, the various aspects of the disclosure set forth herein. It shouldbe understood that any aspect of the disclosure disclosed herein may beembodied by one or more elements of a claim.

As used herein, the word “exemplary” means “serving as an example,instance, or illustration.” Any aspect described herein as “exemplary”is not necessarily to be construed as preferred or advantageous overother aspects.

As used herein, a phrase referring to “at least one of” a list of itemsrefers to any combination of those items, including single members. Asan example, “at least one of: a, b, or c” is intended to cover a, b, c,a-b, a-c, b-c, and a-b-c, as well as any combination with multiples ofthe same element (e.g., a-a, a-a-a, a-a-b, a-a-c, a-b-b, a-c-c, b-b,b-b-b, b-b-c, c-c, and c-c-c or any other ordering of a, b, and c).

As used herein, the term “determining” encompasses a wide variety ofactions. For example, “determining” may include calculating, computing,processing, deriving, investigating, looking up (e.g., looking up in atable, a database or another data structure), ascertaining and the like.Also, “determining” may include receiving (e.g., receiving information),accessing (e.g., accessing data in a memory) and the like. Also,“determining” may include resolving, selecting, choosing, establishingand the like.

The methods disclosed herein comprise one or more steps or actions forachieving the methods. The method steps and/or actions may beinterchanged with one another without departing from the scope of theclaims. In other words, unless a specific order of steps or actions isspecified, the order and/or use of specific steps and/or actions may bemodified without departing from the scope of the claims. Further, thevarious operations of methods described above may be performed by anysuitable means capable of performing the corresponding functions. Themeans may include various hardware and/or software component(s) and/ormodule(s), including, but not limited to a circuit, an applicationspecific integrated circuit (ASIC), or processor. Generally, where thereare operations illustrated in figures, those operations may havecorresponding counterpart means-plus-function components with similarnumbering.

Embodiments of the invention may be provided to end users through acloud computing infrastructure. Cloud computing generally refers to theprovision of scalable computing resources as a service over a network.More formally, cloud computing may be defined as a computing capabilitythat provides an abstraction between the computing resource and itsunderlying technical architecture (e.g., servers, storage, networks),enabling convenient, on-demand network access to a shared pool ofconfigurable computing resources that can be rapidly provisioned andreleased with minimal management effort or service provider interaction.Thus, cloud computing allows a user to access virtual computingresources (e.g., storage, data, applications, and even completevirtualized computing systems) in “the cloud,” without regard for theunderlying physical systems (or locations of those systems) used toprovide the computing resources.

Typically, cloud computing resources are provided to a user on apay-per-use basis, where users are charged only for the computingresources actually used (e.g. an amount of storage space consumed by auser or a number of virtualized systems instantiated by the user). Auser can access any of the resources that reside in the cloud at anytime, and from anywhere across the Internet. In context of the presentinvention, a user may access applications or systems (e.g., the machinelearning system 135 of FIG. 1, 235 of FIG. 2 , and/or 335 of FIG. 3 ) orrelated data available in the cloud. For example, the machine learningsystem could execute on a computing system in the cloud and train and/oruse machine learning models. In such a case, the machine learning system135 could train models to generate validity scores, and store the modelsat a storage location in the cloud. Doing so allows a user to accessthis information from any computing system attached to a networkconnected to the cloud (e.g., the Internet).

The following claims are not intended to be limited to the embodimentsshown herein, but are to be accorded the full scope consistent with thelanguage of the claims. Within a claim, reference to an element in thesingular is not intended to mean “one and only one” unless specificallyso stated, but rather “one or more.” Unless specifically statedotherwise, the term “some” refers to one or more. No claim element is tobe construed under the provisions of 35 U.S.C. § 112(f) unless theelement is expressly recited using the phrase “means for” or, in thecase of a method claim, the element is recited using the phrase “stepfor.” All structural and functional equivalents to the elements of thevarious aspects described throughout this disclosure that are known orlater come to be known to those of ordinary skill in the art areexpressly incorporated herein by reference and are intended to beencompassed by the claims. Moreover, nothing disclosed herein isintended to be dedicated to the public regardless of whether suchdisclosure is explicitly recited in the claims.

What is claimed is:
 1. A method, comprising: receiving activity datadescribing a first activity for a financial account of a first residentin a residential care facility; extracting, from the activity data, afirst set of attributes corresponding to the first activity, comprising:determining a first attribute of the first set of attributes byprocessing unstructured text associated with the first activity usingone or more natural language processing techniques; generating a firstvalidity score by processing the first set of attributes using a trainedmachine learning model, wherein the first validity score indicates aprobability that the first activity is valid; and in response todetermining that the first validity score is below a defined threshold,initiating one or more interventions for the first resident.
 2. Themethod of claim 1, wherein determining the first attribute comprises:identifying a field comprising natural language text describing a reasonfor the first activity; and generating a vector representation of thenatural language text.
 3. The method of claim 2, wherein determining thefirst attribute further comprises preprocessing the natural languagetext prior to generating the vector representation, comprising:normalizing the natural language text; and removing noise from thenormalized natural language text.
 4. The method of claim 1, wherein thefirst set of attributes further comprise: at least one attributecorresponding to a magnitude of the first activity; at least oneattribute corresponding to a recipient of the first activity; at leastone attribute corresponding to a time of the first activity; at leastone attribute corresponding to a form of the first activity; and atleast one attribute corresponding to characteristics of the firstresident.
 5. The method of claim 1, wherein the one or moreinterventions comprise: identifying a trusted caregiver of the firstresident; and outputting an alert to the trusted caregiver, wherein thealert comprises: an indication of the first activity; and a suggestionto question the first resident regarding the first activity.
 6. Themethod of claim 1, wherein the activity data further describes aplurality of activities for the financial account of the first resident,the method further comprising: for each respective activity of theplurality of activities: extracting, from the activity data, arespective set of attributes corresponding to the respective activity;and generating a respective validity score by processing the respectiveset of attributes using the trained machine learning model.
 7. Themethod of claim 1, wherein the machine learning model was trained by:receiving a pre-trained machine learning model previously trained basedon historical data for a plurality of residents; and generating themachine learning model by fine-tuning the pre-trained machine learningmodel using the activity data for the first resident.
 8. The method ofclaim 1, wherein the financial account of the first resident correspondsto funds managed by the residential care facility on behalf of the firstresident.
 9. A non-transitory computer-readable storage mediumcomprising computer-readable program code that, when executed using oneor more computer processors, performs an operation comprising: receivingactivity data describing a first activity for a financial account of afirst resident in a residential care facility; extracting, from theactivity data, a first set of attributes corresponding to the firstactivity, comprising: determining a first attribute of the first set ofattributes by processing unstructured text associated with the firstactivity using one or more natural language processing techniques;generating a first validity score by processing the first set ofattributes using a trained machine learning model, wherein the firstvalidity score indicates a probability that the first activity is valid;and in response to determining that the first validity score is below adefined threshold, initiating one or more interventions for the firstresident.
 10. The non-transitory computer-readable storage medium ofclaim 9, wherein determining the first attribute comprises: identifyinga field comprising natural language text describing a reason for thefirst activity; and generating a vector representation of the naturallanguage text.
 11. The non-transitory computer-readable storage mediumof claim 10, wherein determining the first attribute further comprisespreprocessing the natural language text prior to generating the vectorrepresentation, comprising: normalizing the natural language text; andremoving noise from the normalized natural language text.
 12. Thenon-transitory computer-readable storage medium of claim 9, wherein thefirst set of attributes further comprise: at least one attributecorresponding to a magnitude of the first activity; at least oneattribute corresponding to a recipient of the first activity; at leastone attribute corresponding to a time of the first activity; at leastone attribute corresponding to a form of the first activity; and atleast one attribute corresponding to characteristics of the firstresident.
 13. The non-transitory computer-readable storage medium ofclaim 9, wherein the one or more interventions comprise: identifying atrusted caregiver of the first resident; and outputting an alert to thetrusted caregiver, wherein the alert comprises: an indication of thefirst activity; and a suggestion to question the first residentregarding the first activity.
 14. The non-transitory computer-readablestorage medium of claim 9, wherein the activity data further describes aplurality of activities for the financial account of the first resident,the operation further comprising: for each respective activity of theplurality of activities: extracting, from the activity data, arespective set of attributes corresponding to the respective activity;and generating a respective validity score by processing the respectiveset of attributes using the trained machine learning model.
 15. Thenon-transitory computer-readable storage medium of claim 9, wherein themachine learning model was trained by: receiving a pre-trained machinelearning model previously trained based on historical data for aplurality of residents; and generating the machine learning model byfine-tuning the pre-trained machine learning model using the activitydata for the first resident.
 16. A method, comprising: receivinghistorical data describing activity for a financial account of a firstresident in a residential care facility; extracting, from the historicaldata, a set of attributes corresponding to an activity, comprising:determining a first attribute of the set of attributes by processingunstructured text associated with the activity using one or more naturallanguage processing techniques; training a machine learning model togenerate validity scores based on the set of attributes, wherein thevalidity scores indicate probability that financial account activity isvalid; and deploying the trained machine learning model.
 17. The methodof claim 16, wherein determining the first attribute comprises:identifying a field comprising natural language text describing a reasonfor the activity; and generating a vector representation of the naturallanguage text.
 18. The method of claim 17, wherein determining the firstattribute further comprises preprocessing the natural language textprior to generating the vector representation, comprising: normalizingthe natural language text; and removing noise from the normalizednatural language text.
 19. The method of claim 16, wherein the set ofattributes further comprise: at least one attribute corresponding to amagnitude of the activity; at least one attribute corresponding to arecipient of the activity; at least one attribute corresponding to atime of the activity; at least one attribute corresponding to a form ofthe activity; and at least one attribute corresponding tocharacteristics of the first resident.
 20. The method of claim 16,wherein training the machine learning model comprises: receiving apre-trained machine learning model previously trained based onhistorical data for a plurality of residents; and generating the machinelearning model by fine-tuning the pre-trained machine learning modelusing the historical data for the first resident.